"""
题目：用递归计算一个数组中所有元素的和。
"""

def array_sum(arr):
    """递归计算数组元素之和"""
    # 基线条件：空数组的和为0
    if not arr:
        return 0
    # 递归条件：第一个元素 + 剩余元素的和
    return arr[0] + array_sum(arr[1:])

# 测试
if __name__ == "__main__":
    print(array_sum([1, 2, 3, 4]))  # 输出: 10（1+2+3+4）
    print(array_sum([]))            # 输出: 0
    print(array_sum([5]))           # 输出: 5